home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / machserver / 1.098 / Include / net.h < prev    next >
C/C++ Source or Header  |  1991-03-29  |  4KB  |  103 lines

  1. /*
  2.  * net.h --
  3.  *
  4.  *    This defines the external definitions for the networking software.
  5.  *
  6.  * Copyright 1985, 1988 Regents of the University of California
  7.  * Permission to use, copy, modify, and distribute this
  8.  * software and its documentation for any purpose and without
  9.  * fee is hereby granted, provided that the above copyright
  10.  * notice appear in all copies.  The University of California
  11.  * makes no representations about the suitability of this
  12.  * software for any purpose.  It is provided "as is" without
  13.  * express or implied warranty.
  14.  *
  15.  *
  16.  * $Header: /sprite/src/kernel/net/RCS/net.h,v 9.8 90/11/14 15:17:11 shirriff Exp Locker: mgbaker $ SPRITE (Berkeley)
  17.  */
  18.  
  19. #ifndef _NET
  20. #define _NET
  21.  
  22. #ifdef KERNEL
  23. #include <sprite.h>
  24. #include <user/net.h>
  25. #include <syncTypes.h>
  26. #include <netTypes.h>
  27. #include <user/netEther.h>
  28. #include <user/netInet.h>
  29. #include <user/netUltra.h>
  30. #include <netRoute.h>
  31. #else
  32. #include <sprite.h>
  33. #include <net.h>
  34. #include <kernel/syncTypes.h>
  35. #include <kernel/netTypes.h>
  36. #include <netEther.h>
  37. #include <netInet.h>
  38. #include <netUltra.h>
  39. #include <kernel/netRoute.h>
  40. #endif
  41.  
  42. extern int        net_NetworkHeaderSize[];
  43.  
  44. extern void Net_Init _ARGS_((void));
  45. extern void Net_Bin _ARGS_((void));
  46. extern void Net_Reset _ARGS_((Net_Interface *interPtr));
  47. extern void Net_Input _ARGS_((Net_Interface *interPtr, Address packetPtr, 
  48.             int packetLength));
  49. extern ReturnStatus Net_Output _ARGS_((int spriteID, 
  50.             Net_ScatterGather *gatherPtr, int gatherLength, 
  51.             Sync_Semaphore *mutexPtr, Net_Route *routePtr));
  52. extern ReturnStatus Net_RawOutput _ARGS_((Net_Interface *interPtr, 
  53.             Address headerPtr, 
  54.             Net_ScatterGather *gatherPtr, int gatherLength));
  55. extern void Net_RecvPoll _ARGS_((Net_Interface *interPtr));
  56. extern ReturnStatus Net_RawOutputSync _ARGS_((Net_Interface *interPtr, 
  57.             Address headerPtr, Net_ScatterGather *gatherPtr, 
  58.             int gatherLength));
  59. extern int Net_Intr _ARGS_((Net_Interface *interPtr));
  60. extern void Net_GatherCopy _ARGS_((register Net_ScatterGather *scatterGatherPtr,
  61.             int scatterGatherLength, register Address destAddr));
  62. extern void Net_SetPacketHandler _ARGS_((Net_Interface *interPtr, 
  63.             void (*handler)()));
  64. extern void Net_RemovePacketHandler _ARGS_((Net_Interface *interPtr));
  65. extern ReturnStatus Net_InstallRouteStub _ARGS_((int size, 
  66.             Net_RouteInfo *routeInfoPtr));
  67. #ifdef KERNEL
  68. extern ReturnStatus Net_InstallRoute _ARGS_((int spriteID, 
  69.             Net_Interface *interPtr, Net_Address *netAddressPtr, 
  70.             int protocol, char *hostname, char *machType, 
  71.             ClientData userData));
  72. #endif
  73. extern void Net_DeleteRoute _ARGS_((Net_Route *routePtr));
  74. extern void Net_SpriteIDToName _ARGS_((int spriteID, int bufferLen, 
  75.             char *buffer));
  76. extern void Net_SpriteIDToMachType _ARGS_((int spriteID, int bufferLen, 
  77.             char *buffer));
  78. extern void Net_RouteInit _ARGS_((void));
  79. extern void Net_ReleaseRoute _ARGS_((Net_Route *routePtr));
  80. extern Net_Route *Net_IDToRoute _ARGS_((int spriteID, int index, Boolean doArp,
  81.             Sync_Semaphore *mutexPtr, int size));
  82. extern int Net_AddrToID _ARGS_((Net_NetworkType netType, int protocol, 
  83.             Net_Address *addressPtr));
  84. extern Net_Interface *Net_GetInterface _ARGS_((Net_NetworkType netType, 
  85.             int number));
  86. extern Net_Interface *Net_NextInterface _ARGS_((Boolean running, 
  87.             int *indexPtr));
  88. extern void Net_HostPrint _ARGS_((int spriteID, char *string));
  89. extern void Net_ArpInit _ARGS_((void));
  90. extern ReturnStatus Net_Arp _ARGS_((int spriteID, Sync_Semaphore *mutexPtr));
  91. extern int  Net_RevArp _ARGS_((Net_Route *routePtr, int protocol, 
  92.             Net_Address *netAddressPtr, Sync_Semaphore *mutexPtr));
  93. extern void Net_HdrDestString _ARGS_((Net_NetworkType netType, int protocol, 
  94.             Address headerPtr, int bufferLen, char *buffer));
  95. extern int  Net_HdrToID _ARGS_((Net_NetworkType netType, int protocol,
  96.             Address headerPtr));
  97. extern ReturnStatus    Net_IDToRouteStub _ARGS_((int spriteID, int size,
  98.                 Address argPtr));
  99. extern ReturnStatus    Net_GetStats _ARGS_((Net_NetworkType netType,
  100.                 Net_Stats *statPtr));
  101.  
  102. #endif /* _NET */
  103.